#pragma warning disable 108
using System;
using System.Runtime.InteropServices;
using System.Collections.Generic;
using Cephei;
using Cephei.Generic;
namespace Cephei.QL.Experimental.Credit
{
     // <summary> 
	// ! \ingroup probability
	// </summary>
    [Guid ("6357A70A-BFA0-4e89-8A4D-02A393D5A0A6"),ComVisible(true)]
	public interface ILossDist 
	{
		///////////////////////////////////////////////////////////////
        // Methods
        //
        
		 Double BinomialProbabilityOfAtLeastNEvents(Int32 n, Cephei.IVector<Double> p);
        
		 Double BinomialProbabilityOfNEvents(Int32 n, Cephei.IVector<Double> p);
        
		 UInt64 Buckets {get;}
        
		 Double Maximum {get;}
        
		 Double ProbabilityOfAtLeastNEvents(Int32 n, Cephei.IVector<Double> p);
        
		 Double ProbabilityOfNEvents(Int32 n, Cephei.IVector<Double> p);
        
		 Cephei.IVector<Double> ProbabilityOfNEvents(Cephei.IVector<Double> p);
    }

    // <summary> 
	// ! \ingroup probability Factory
	// </summary>
   	[ComVisible(true)]
    public interface ILossDist_Factory // : Collection_Factory<ILossDist, ICell<ILossDist>>
    {
        ///////////////////////////////////////////////////////////////
        // Factory methods
        //
    }
}

